Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>Windows Bitmap</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/Windows_Bitmap"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Windows_Bitmap rootpage-Windows_Bitmap skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Windows Bitmap</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr"><table class="infobox float-right toptextcells hintergrundfarbe1" id="vorlage-infobox-dateiformat" summary="Infobox Dateiformat" style="width:23em; margin: 0 0 1em 1em; border:solid 1px #BBBBBB; font-size: 90%; padding:2px;">

<tbody><tr>
<th colspan="2">Windows Bitmap
</th></tr>






<tr>
<td style="white-space: nowrap;"><a href="Dateinamenserweiterung" title="Dateinamenserweiterung">Dateiendung</a>:
</td>
<td><code style="margin:0.2em 0; padding:0;">.bmp, .dib</code>
</td></tr>
<tr>
<td style="white-space:nowrap;"><a href="Internet_Media_Type" title="Internet Media Type">MIME-Type</a>:
</td>
<td><code style="margin:0.2em 0; padding:0;">image/x-ms-bmp, image/x-bmp, image/bmp</code>
</td></tr>
<tr>
<td style="white-space: wrap;"><a href="Magische_Zahl_(Informatik)" title="Magische Zahl (Informatik)">Magische Zahl</a>:
</td>
<td><span style="background:#DDDDDD; color:#202122; padding-left:3px; padding-right:3px; font-family:monospace;">42, 4D</span> <sub><small><a href="Hexadezimalsystem" title="Hexadezimalsystem">hex</a></small></sub><br> <span style="background:#DDDDDD; color:#202122; padding-left:3px; padding-right:3px; font-family:monospace;">BM</span>
</td></tr>
<tr>
<td style="white-space: nowrap;">Entwickelt von:
</td>
<td><a href="Microsoft" title="Microsoft">Microsoft</a>
</td></tr>



<tr>
<td style="white-space: nowrap;">Aktuelle&nbsp;<a href="Version_(Software)" title="Version (Software)">Version</a>
</td>
<td>5
</td></tr>
<tr>
<td style="white-space: nowrap;">Art:
</td>
<td><a href="Rastergrafik" title="Rastergrafik">Rastergrafik</a>
</td></tr>












<tr>
<td colspan="2" style="display:none">
<p><br>


</p>
</td></tr>
<tr>
<td colspan="2">
</td></tr></tbody></table>
<p><b>Windows Bitmap</b> (BMP) oder <b>device-independent bitmap</b> (DIB) ist ein zweidimensionales <a href="Rastergrafik" title="Rastergrafik">Rastergrafikformat</a>, das für die Betriebssysteme <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a> und <a href="OS/2" title="OS/2">OS/2</a> entwickelt und mit <a href="Microsoft_Windows_3.0" title="Microsoft Windows 3.0">Microsoft Windows 3.0</a> eingeführt wurde, welches 1990 erschien. Die <a href="Dateinamenserweiterung" title="Dateinamenserweiterung">Dateiendung</a> ist <i>.bmp</i>, seltener <i>.dib</i>.
</p>

<div class="mw-heading mw-heading2"><h2 id="Merkmale">Merkmale</h2></div>
<p>BMPs gibt es in drei verschiedenen Versionen. Die meisten BMP-Dateien liegen in der Version 3 vor; es gibt keine früheren Versionen. Die späteren Versionen 4 und 5 sind höchst selten anzutreffen.
</p><p>Windows-Bitmaps (der Version 3) erlauben <a href="Farbtiefe_(Computergrafik)" title="Farbtiefe (Computergrafik)">Farbtiefen</a> von 1, 4, 8, 16, 24 oder 32&nbsp;bpp (bpp = bits per pixel, Bits je Bildpunkt), wobei bei 16 und 32 <abbr title="bits per pixel">bpp</abbr> nicht alle <a href="Bit" title="Bit">Bits</a> tatsächlich genutzt werden müssen. <a href="Alphakanal" title="Alphakanal">Alphakanäle</a>, <a href="Farbkorrektur" title="Farbkorrektur">Farbkorrektur</a> und <a href="Metadaten" title="Metadaten">Metadaten</a> werden nicht unterstützt. Windows-Bitmaps werden entweder unkomprimiert oder verlustfrei mit RLE-Komprimierung (<a href="Laufl%C3%A4ngenkodierung" title="Lauflängenkodierung">Lauflängenkodierung</a>) gespeichert. Dies ist ein eher schwaches Verfahren, sodass BMP-Dateien wesentlich größer sind als andere Formate wie <a href="Portable_Network_Graphics" title="Portable Network Graphics">PNG</a> und kaum für das <a href="Internet" title="Internet">Internet</a> genutzt werden. Dafür ist das BMP-Format relativ einfach aufgebaut. BMPs sind vor allem im Windows-Umfeld weit verbreitet; gängige <a href="Grafiksoftware" title="Grafiksoftware">Grafiksoftware</a> unterstützt das Format problemlos (mit Ausnahme der eher exotischen Farbtiefen 16 und 32&nbsp;<abbr title="bits per pixel">bpp</abbr>).
</p><p>Die maximale Breite/Höhe eines Bildes beträgt theoretisch je 2.147.483.647 Pixel (2<sup>31</sup>&nbsp;−&nbsp;1). In der Praxis akzeptieren viele Decoder nur deutlich niedrigere Werte.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Dateiformat_(Version_3)"><span id="Dateiformat_.28Version_3.29"></span>Dateiformat (Version 3)</h2></div>
<table class="wikitable float-right">

<tbody><tr>
<td class="hintergrundfarbe5"><b>Dateikopf</b><br>(<span style="font-family:monospace">BITMAPFILEHEADER</span>)
</td></tr>
<tr>
<td style="background:#E3ECF4"><b>Informationsblock</b><br>(<span style="font-family:monospace">BITMAPINFO</span>):
<dl><dd><b>Bitmap-Eigenschaften</b><br>(<span style="font-family:monospace">BITMAPINFOHEADER</span>)</dd>
<dd><hr></dd>
<dd>Eventuell: <b>Farbmasken</b></dd>
<dd><hr></dd>
<dd>Eventuell: <b>Farbtabelle</b></dd></dl>
</td></tr>
<tr>
<td>Eventuell: Ungenutzter Platz
</td></tr>
<tr>
<td style="background:#CCDDEE"><b>Bilddaten</b>
</td></tr>
<tr>
<td>Eventuell: Ungenutzter Platz
</td></tr></tbody></table>
<p>BMP-Dateien bestehen aus drei Teilen: dem Dateikopf, dem Informationsblock und den Bilddaten (siehe Schema rechts).
</p><p>Im Folgenden bezeichnet <span style="font-family:monospace">WORD</span> einen 16-Bit-vorzeichenlosen <a href="Integer_(Datentyp)" title="Integer (Datentyp)">Integer</a>, <span style="font-family:monospace">DWORD</span> einen 32-Bit-vorzeichenlosen Integer und <span style="font-family:monospace">LONG</span> einen im <a href="Zweierkomplement" title="Zweierkomplement">Zweierkomplement</a> kodierten 32-Bit-Integer. BMP verwendet die <a href="Little_Endian" class="mw-redirect" title="Little Endian">Little-Endian</a>-Konvention.
</p>
<div class="mw-heading mw-heading3"><h3 id="Dateikopf">Dateikopf</h3></div>
<table class="wikitable">
<tbody><tr>
<th colspan="7" style="background:#FFEFD5"><span style="font-family:monospace">BITMAPFILEHEADER</span> (Größe: 14 Byte)
</th></tr>
<tr>
<th colspan="2">Offset (Byte)
</th>
<th colspan="2">Datentyp
</th>
<th rowspan="2">Größe
</th>
<th rowspan="2">Name
</th>
<th rowspan="2">Inhalt
</th></tr>
<tr>
<th>Dez
</th>
<th>Hex
</th>
<th>Windows-Style
</th>
<th>C-Style
</th></tr>
<tr>
<td>0
</td>
<td>0
</td>
<td style="font-family:monospace">WORD
</td>
<td style="font-family:monospace">uint16_t
</td>
<td>2 Byte
</td>
<td>bfType
</td>
<td><a href="ASCII" class="mw-redirect" title="ASCII">ASCII</a>-Zeichenkette <span style="font-family:monospace">"BM"</span> (Hex: 0x42 0x4D, Dezimal: 66 77).
</td></tr>
<tr>
<td>2
</td>
<td>2
</td>
<td style="font-family:monospace">DWORD
</td>
<td style="font-family:monospace">uint32_t
</td>
<td>4 Byte
</td>
<td>bfSize
</td>
<td>Größe der BMP-Datei in Byte. (unzuverlässig)
</td></tr>
<tr>
<td>6
</td>
<td>6
</td>
<td style="font-family:monospace">DWORD
</td>
<td style="font-family:monospace">uint32_t
</td>
<td>4 Byte
</td>
<td>bfReserved
</td>
<td>Reserviert, von der Software abhängig, standardmäßig 0
</td></tr>
<tr>
<td>10
</td>
<td>A
</td>
<td style="font-family:monospace">DWORD
</td>
<td style="font-family:monospace">uint32_t
</td>
<td>4 Byte
</td>
<td>bfOffBits
</td>
<td>Offset der Bilddaten in Byte vom Beginn der Datei an.
<p>Dieser hat nicht immer den Wert 54 (er ergibt sich aus 14 Byte Header + 40 Byte Infoblock) und muss daher dynamisch ausgelesen werden, weil es sonst ggf. zu Fehldarstellungen im Bild kommt.
</p>
</td></tr></tbody></table><p><sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p><div class="mw-heading mw-heading3"><h3 id="Informationsblock">Informationsblock</h3></div>
<div class="mw-heading mw-heading4"><h4 id="Bitmap-Eigenschaften">Bitmap-Eigenschaften</h4></div>
<p>Der Informationsblock beginnt mit folgender Struktur, die die Bitmap-Eigenschaften enthält<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>
</p>
<table class="wikitable">
<tbody><tr>
<th colspan="7" style="background:#FFEFD5"><span style="font-family:monospace">BITMAPINFOHEADER</span> (Größe: 40 Byte)
</th></tr>
<tr>
<th width="6%" colspan="2">Offset (Byte)
</th>
<th colspan="2">Datentyp
</th>
<th rowspan="2">Größe
</th>
<th rowspan="2">Name
</th>
<th rowspan="2">Inhalt
</th></tr>
<tr>
<th>Dez
</th>
<th>Hex
</th>
<th>Windows-Style
</th>
<th>C-Style
</th></tr>
<tr>
<td>14
</td>
<td>0E
</td>
<td style="font-family:monospace">DWORD
</td>
<td style="font-family:monospace">uint32_t
</td>
<td>4 Byte
</td>
<td>biSize
</td>
<td>Größe der BITMAPINFOHEADER-Struktur in Byte
</td></tr>
<tr>
<td>18
</td>
<td>12
</td>
<td style="font-family:monospace">LONG
</td>
<td style="font-family:monospace">int32_t
</td>
<td>4 Byte
</td>
<td>biWidth
</td>
<td>Breite der Bitmap in Pixel. Dabei ist das erste Byte niederwertig und das letzte Byte höchstwertig.
</td></tr>
<tr>
<td>22
</td>
<td>16
</td>
<td style="font-family:monospace">LONG
</td>
<td style="font-family:monospace">int32_t
</td>
<td>4 Byte
</td>
<td>biHeight
</td>
<td>Der <a href="Absoluter_Betrag" class="mw-redirect" title="Absoluter Betrag">Betrag</a> gibt die Höhe der Bitmap in Pixel an. Dabei ist das erste Byte niederwertig und das letzte Byte höchstwertig.
<ul><li>Ist der Wert positiv, so ist die Bitmap eine sogenannte "bottom-up"-Bitmap (die Bilddaten beginnen mit der untersten und enden mit der obersten Bildzeile). Dies ist die gebräuchlichste Variante.<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup></li>
<li>Ist der Wert negativ, so ist die Bitmap eine “top-down”-Bitmap (die Bilddaten beginnen mit der obersten und enden mit der untersten Bildzeile).</li></ul>
</td></tr>
<tr>
<td>26
</td>
<td>1A
</td>
<td style="font-family:monospace">WORD
</td>
<td style="font-family:monospace">uint16_t
</td>
<td>2 Byte
</td>
<td>biPlanes
</td>
<td>1 (Stand in einigen älteren Formaten wie <a href="Picture_exchange" title="Picture exchange">PCX</a> für die Anzahl der Farbebenen, wird aber für BMP nicht verwendet)
</td></tr>
<tr>
<td>28
</td>
<td>1C
</td>
<td style="font-family:monospace">WORD
</td>
<td style="font-family:monospace">uint16_t
</td>
<td>2 Byte
</td>
<td>biBitCount
</td>
<td>Gibt die Farbtiefe der Bitmap in <a href="Farbtiefe_(Computergrafik)" title="Farbtiefe (Computergrafik)">bpp</a> an; muss einer der folgenden Werte sein: 1, 4, 8, 16, 24 oder 32. Bei 1, 4 und 8 bpp sind die Farben <a href="Indizierte_Farben" title="Indizierte Farben">indiziert</a>.
</td></tr>
<tr>
<td>30
</td>
<td>1E
</td>
<td style="font-family:monospace">DWORD
</td>
<td style="font-family:monospace">uint32_t
</td>
<td>4 Byte
</td>
<td>biCompression
</td>
<td>Einer der folgenden Werte:
<ul><li>0 (<span style="font-family:monospace">BI_RGB</span>): Bilddaten sind unkomprimiert.</li>
<li>1 (<span style="font-family:monospace">BI_RLE8</span>): Bilddaten sind lauflängenkodiert für 8 bpp. Nur erlaubt wenn biBitCount=8 und biHeight positiv.</li>
<li>2 (<span style="font-family:monospace">BI_RLE4</span>): Bilddaten sind lauflängenkodiert für 4 bpp. Nur erlaubt wenn biBitCount=4 und biHeight positiv.</li>
<li>3 (<span style="font-family:monospace">BI_BITFIELDS</span>): Bilddaten sind unkomprimiert und benutzerdefiniert (mittels Farbmasken) kodiert. Nur erlaubt wenn biBitCount=16 oder 32.</li></ul>
</td></tr>
<tr>
<td>34
</td>
<td>22
</td>
<td style="font-family:monospace">DWORD
</td>
<td style="font-family:monospace">uint32_t
</td>
<td>4 Byte
</td>
<td>biSizeImage
</td>
<td>
<ul><li><i>Wenn biCompression=<span style="font-family:monospace">BI_RGB</span>:</i> Entweder 0 oder die Größe der Bilddaten in Byte.</li>
<li><i>Ansonsten:</i> Größe der Bilddaten in Byte.</li></ul>
</td></tr>
<tr>
<td>38
</td>
<td>26
</td>
<td style="font-family:monospace">LONG
</td>
<td style="font-family:monospace">int32_t
</td>
<td>4 Byte
</td>
<td>biXPelsPerMeter
</td>
<td>Horizontale Auflösung des Zielausgabegerätes in Pixel pro Meter; wird aber für BMP-Dateien meistens auf 0 gesetzt.
</td></tr>
<tr>
<td>42
</td>
<td>2A
</td>
<td style="font-family:monospace">LONG
</td>
<td style="font-family:monospace">int32_t
</td>
<td>4 Byte
</td>
<td>biYPelsPerMeter
</td>
<td>Vertikale Auflösung des Zielausgabegerätes in Pixel pro Meter; wird aber für BMP-Dateien meistens auf 0 gesetzt.
</td></tr>
<tr>
<td>46
</td>
<td>2E
</td>
<td style="font-family:monospace">DWORD
</td>
<td style="font-family:monospace">uint32_t
</td>
<td>4 Byte
</td>
<td>biClrUsed
</td>
<td>
<ul><li><i>Wenn biBitCount=1:</i> 0.</li>
<li><i>Wenn biBitCount=4 oder 8:</i> die Anzahl der Einträge der Farbtabelle; 0 bedeutet die maximale Anzahl (2, 16 oder 256).</li>
<li><i>Ansonsten:</i> Die Anzahl der Einträge der Farbtabelle (0=keine Farbtabelle). Auch wenn sie in diesem Fall nicht notwendig ist, kann dennoch eine für die <a href="Quantisierung_(Signalverarbeitung)" title="Quantisierung (Signalverarbeitung)">Farbquantisierung</a> empfohlene Farbtabelle angegeben werden.</li></ul>
</td></tr>
<tr>
<td>50
</td>
<td>32
</td>
<td style="font-family:monospace">DWORD
</td>
<td style="font-family:monospace">uint32_t
</td>
<td>4 Byte
</td>
<td>biClrImportant
</td>
<td>
<ul><li><i>Wenn biBitCount=1, 4 oder 8:</i> Die Anzahl sämtlicher im Bild verwendeten Farben; 0 bedeutet alle Farben der Farbtabelle.</li>
<li><i>Ansonsten:</i>
<ul><li><i>Wenn eine Farbtabelle vorhanden ist und diese sämtliche im Bild verwendeten Farben enthält:</i> deren Anzahl.</li>
<li><i>Ansonsten:</i> 0.</li></ul></li></ul>
</td></tr></tbody></table>
<div class="mw-heading mw-heading4"><h4 id="Farbmasken">Farbmasken</h4></div>
<p>Wenn biCompression=<code>BI_BITFIELDS</code>, dann folgen 3 <code>DWORD</code>s, die <a href="Bitmaske" class="mw-redirect" title="Bitmaske">Bitmasken</a> für die Rot-, Grün- und Blauwerte enthalten. Gesetzte Bits bedeuten, dass in den Daten eines Pixels jenes Bit für den jeweiligen <a href="Farbkanal" title="Farbkanal">Farbkanal</a> verwendet wird. Dabei müssen folgende Bedingungen erfüllt sein:
</p>
<ul><li>gesetzte Bits müssen direkt nacheinander folgen;</li>
<li>für 16 bpp müssen sich die gesetzten Bits in den beiden niederwertigen Bytes befinden;</li>
<li>die Bitmasken der einzelnen Farbkanäle dürfen einander nicht überlappen.</li></ul>
<div class="mw-heading mw-heading4"><h4 id="Farbtabelle">Farbtabelle</h4></div>
<ul><li><i>Wenn biClrUsed=0:</i>
<ul><li><i>Wenn biBitCount=1, 4 oder 8:</i> Es folgt eine Farbtabelle mit 2<sup>biBitCount</sup> Einträgen.</li>
<li><i>Ansonsten:</i> Es folgt keine Farbtabelle.</li></ul></li>
<li><i>Ansonsten:</i> Es folgt eine Farbtabelle mit biClrUsed Einträgen.</li></ul>
<p>Jeder Eintrag der Farbtabelle ist 4 Byte groß und enthält jeweils ein Byte für den Blau-, Grün- und Rotanteil, sowie ein auf 0 gesetztes Byte (in dieser Reihenfolge!).
</p>
<div class="mw-heading mw-heading3"><h3 id="Bilddaten">Bilddaten</h3></div>
<p>Die Bilddaten beginnen am Offset bfOffBits. Die Größe der Bilddaten beträgt näherungsweise (gilt nur für durch 4 teilbare Bildbreiten) biWidth×biHeight×biBitCount/8 wenn biCompression=<span style="font-family:monospace">BI_RGB</span>, ansonsten biSizeImage.
</p><p>Die Bilddaten werden Zeile für Zeile gespeichert. Wenn biHeight positiv ist, beginnen die Bilddaten mit der letzten und enden mit der ersten Bildzeile, ansonsten ist es umgekehrt. Bei <b><span style="font-family:monospace">BI_BITFIELDS</span></b> und bei <b><span style="font-family:monospace">BI_RGB</span></b> ist die Länge jeder Zeile ein Vielfaches von 4 Bytes und wird, falls erforderlich, mit Nullbytes aufgefüllt.
</p><p>Das weitere Format der Bilddaten hängt vom Wert des biCompression-Felds ab:
</p>
<ul><li><b><span style="font-family:monospace">BI_BITFIELDS</span></b></li></ul>
<dl><dd>Jede Bildzeile ist durch rechtsseitiges Auffüllen mit Nullen auf ein ganzzahliges Vielfaches von 4 Bytes ausgerichtet. Das Format der Pixel ist in den Farbmasken definiert. Bei 16 bpp werden nur die beiden niederwertigen Bytes der Farbmasken berücksichtigt.</dd></dl>
<ul><li><b><span style="font-family:monospace">BI_RGB</span></b></li></ul>
<dl><dd>Jede Bildzeile ist durch rechtsseitiges Auffüllen mit Nullen auf ein ganzzahliges Vielfaches von 4 Bytes ausgerichtet.</dd></dl>
<dl><dd><b>1, 4 oder 8 bpp:</b></dd>
<dd>Die Daten jedes Pixels bestehen aus einem 0-basierten Index auf den Eintrag in der Farbtabelle.</dd></dl>
<dl><dd><b>16 bpp:</b></dd>
<dd>Das Format ist wie bei <span style="font-family:monospace">BI_BITFIELDS</span>, wenn folgende Farbmasken verwendet würden:
<dl><dd><span style="font-family:monospace">0x00007C00</span> für den Rot-Kanal</dd>
<dd><span style="font-family:monospace">0x000003E0</span> für den Grün-Kanal</dd>
<dd><span style="font-family:monospace">0x0000001F</span> für den Blau-Kanal</dd></dl></dd>
<dd>Jeder Farbkanal ist 5 Bit pro Pixel groß; insgesamt ergeben sich 32.768 mögliche Farben (ein Bit ist ungenutzt).</dd></dl>
<dl><dd><b>24 bpp:</b></dd>
<dd>Die Daten jedes Pixels bestehen aus jeweils einem Byte für den Blau-, Grün- und Rot-Kanal (in dieser Reihenfolge!).</dd></dl>
<dl><dd><b>32 bpp:</b></dd>
<dd>Das Format ist wie bei <span style="font-family:monospace">BI_BITFIELDS</span>, wenn folgende Farbmasken verwendet würden:
<dl><dd><span style="font-family:monospace">0x00FF0000</span> für den Rot-Kanal</dd>
<dd><span style="font-family:monospace">0x0000FF00</span> für den Grün-Kanal</dd>
<dd><span style="font-family:monospace">0x000000FF</span> für den Blau-Kanal</dd></dl></dd>
<dd>Jeder Farbkanal ist 8 Bit pro Pixel groß; insgesamt ergeben sich 16.777.216 mögliche Farben (8 Bit sind ungenutzt). Einige Programme wie etwa <a href="Adobe_Photoshop" title="Adobe Photoshop">Adobe Photoshop</a> interpretieren die verbleibenden 8 Bits (<span style="font-family:monospace">0xFF000000</span>) als <a href="Alphakanal" title="Alphakanal">Alphakanal</a> mit 256 möglichen Transparenzstufen. Dies ist jedoch von der Spezifikation nicht vorgesehen.</dd></dl>
<ul><li><b><span style="font-family:monospace">BI_RLE8</span> und <span style="font-family:monospace">BI_RLE4</span></b></li></ul>
<dl><dd>Jeweils zwei aufeinanderfolgende Bytes bilden einen Datensatz. Hat das erste Byte einen anderen Wert als 0, so wird das zweite Byte so oft (bei <span style="font-family:monospace">BI_RLE4</span>: die nächsten 2 <a href="Nibble" title="Nibble">Nibbles</a> insgesamt, Beispiel: 05 67 → 6 7 6 7 6) wiederholt, wie das erste Byte angibt. Hat das erste Byte hingegen den Wert 0, so hängt die Bedeutung vom zweiten Byte ab:</dd></dl>
<table class="toptextcells" style="margin-left:2em">
<tbody><tr>
<td><b>0:</b>
</td>
<td>Ende der Bildzeile.
</td></tr>
<tr>
<td><b>1:</b>
</td>
<td>Ende der Bitmap.
</td></tr>
<tr>
<td><b>2:</b>
</td>
<td>Verschiebung der aktuellen Pixelposition. Die beiden nächsten Bytes geben die Verschiebung nach rechts und nach unten an.
</td></tr>
<tr>
<td><b><i>n</i>=3-255:</b>
</td>
<td>Die folgenden <i>n</i> Bytes (bei <span style="font-family:monospace">BI_RLE4</span>: die folgenden <i>n</i> Nibbles) werden direkt übernommen; der nächste Datensatz findet sich am darauffolgenden geraden Offset (vom Start der Bilddaten aus gezählt).
</td></tr></tbody></table>
<dl><dd>Das Resultat wird wie im unkomprimierten Fall interpretiert.</dd></dl>
<div class="mw-heading mw-heading2"><h2 id="Vor-_und_Nachteile">Vor- und Nachteile</h2></div>
<p>Vorteile von Bitmaps sind unter anderem:<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>
</p>
<ul><li>Die einfache Erstellung aus bereits im <a href="Arbeitsspeicher" title="Arbeitsspeicher">Arbeitsspeicher</a> des Computers vorhandenen Pixeldaten.</li>
<li>Der effiziente und simple Zugriff auf die Bilddaten auf Grund ihrer rasterartigen Anordnung.</li>
<li>Eine Änderung der Farbinformation durch Änderung einer eventuell vorhandenen Palette ist möglich, ohne die Bilddaten selber zu ändern.</li>
<li>Die einfache Ausgabe auf rasterbasierte Ausgabegeräte wie Monitore oder Drucker.</li></ul>
<p>Nachteile von Bitmaps sind unter anderem:
</p>
<ul><li>Die große Dateigröße im Vergleich zu komprimierten Formaten.</li>
<li>Sofern die übliche Zeilenanordnung gewählt wird, steht das Bild – verglichen mit der Zeilenfolge auf einem üblichen <a href="Bildschirm" title="Bildschirm">Bildschirm</a> – auf dem Kopf<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Versionen_4_und_5">Versionen 4 und 5</h2></div>
<p><a href="Microsoft" title="Microsoft">Microsoft</a> hat mit <a href="Microsoft_Windows_95" title="Microsoft Windows 95">Windows 95</a> und <a href="Microsoft_Windows_98" title="Microsoft Windows 98">Windows 98</a> neuere Versionen 4 und 5 des BMP-Formates eingeführt, die <a href="Alphakanal" title="Alphakanal">Alphakanäle</a> und <a href="Farbkorrektur" title="Farbkorrektur">Farbkorrektur</a> ermöglichen und als <a href="Containerformat" title="Containerformat">Containerformat</a> für <a href="Portable_Network_Graphics" title="Portable Network Graphics">PNG</a>- und <a href="JPEG_File_Interchange_Format" title="JPEG File Interchange Format">JFIF</a>-Dateien verwendet werden können. Diese neuen Formate sind jedoch nur sehr selten als eigenständige Dateien anzutreffen und werden kaum von Anwendungen unterstützt; sie finden eher als internes Format in Windows-Programmen Verwendung.
</p>
<div class="mw-heading mw-heading2"><h2 id="Siehe_auch">Siehe auch</h2></div>
<ul><li><a href="Wireless_Application_Protocol_Bitmap_Format" title="Wireless Application Protocol Bitmap Format">Wireless Application Protocol Bitmap Format</a> (WBMP)</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Literatur">Literatur</h2></div>
<ul><li>Thomas W. Lipp: <i>Grafikformate.</i> Microsoft Press, Unterschleißheim 1997, ISBN 3-86063-391-0.</li>
<li>John Miano: <i>Compressed Image File Formats.</i> Addison-Wesley, Reading 2000, ISBN 0-201-60443-4.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Weblinks">Weblinks</h2></div>
<ul><li><a rel="nofollow" class="external text" href="http://msdn.microsoft.com/de-de/library/dd183392%28en-us,VS.85%29.aspx">Spezifikation aus dem Microsoft Platform SDK</a></li>
<li><a rel="nofollow" class="external text" href="http://www.kalytta.com/bitmap.h">Einfache C++-Klasse zum Laden einer Windows Bitmap</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Einzelnachweise">Einzelnachweise</h2></div>
<ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a></span> <span class="reference-text"><span class="cite"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20151208044554/https://chromium.googlesource.com/chromium/src/+/master/third_party/WebKit/Source/platform/image-decoders/bmp/BMPImageReader.cpp#389"><i>Quellcode für BMPImageReader.cpp in Chromium.</i></a> In: <i>chromium.googlesource.com.</i> Archiviert vom <style data-mw-deduplicate="TemplateStyles:r250917974">
/* start https://de.wikipedia.org/ */


.mw-parser-output .dewiki-iconexternal>a{background-position:center right!important;background-repeat:no-repeat!important}body.skin-minerva .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/OOjs_UI_icon_external-link-ltr-progressive.svg")!important;background-size:10px!important;padding-right:13px!important}body.skin-timeless .mw-parser-output .dewiki-iconexternal>a,body.skin-monobook .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/MediaWiki_external_link_icon.svg")!important;padding-right:13px!important}body.skin-vector .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/Link.ernal-small-ltr-progressive.svg")!important;background-size:0.857em!important;padding-right:1em!important}


/* end https://de.wikipedia.org/ */
</style><span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=https%3A%2F%2Fchromium.googlesource.com%2Fchromium%2Fsrc%2F%2B%2Fmaster%2Fthird_party%2FWebKit%2FSource%2Fplatform%2Fimage-decoders%2Fbmp%2FBMPImageReader.cpp%23389">Original</a></span> (nicht mehr online verfügbar) am <span style="white-space:nowrap;">8.&nbsp;Dezember 2015</span><span>;</span><span class="Abrufdatum"> abgerufen am 2.&nbsp;Dezember 2015</span>.</span> <small class="archiv-bot"><span class="wp_boppel noviewer" aria-hidden="true" role="presentation"><span typeof="mw:File"><span title="i"></span></span></span>&nbsp;<b>Info:</b> Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.</small><span style="display:none"><a rel="nofollow" class="external text" href="http://IABotmemento.invalid/https://chromium.googlesource.com/chromium/src/+/master/third_party/WebKit/Source/platform/image-decoders/bmp/BMPImageReader.cpp#389">@1</a></span><span style="display:none"><a rel="nofollow" class="external text" href="https://chromium.googlesource.com/chromium/src/+/master/third_party/WebKit/Source/platform/image-decoders/bmp/BMPImageReader.cpp#389">@2</a></span><span style="display:none">Vorlage:Webachiv/IABot/chromium.googlesource.com</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fde.wikipedia.org%3AWindows+Bitmap&amp;rft.title=Quellcode+f%C3%BCr+BMPImageReader.cpp+in+Chromium&amp;rft.description=Quellcode+f%C3%BCr+BMPImageReader.cpp+in+Chromium&amp;rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20151208044554%2Fhttps%3A%2F%2Fchromium.googlesource.com%2Fchromium%2Fsrc%2F%2B%2Fmaster%2Fthird_party%2FWebKit%2FSource%2Fplatform%2Fimage-decoders%2Fbmp%2FBMPImageReader.cpp%23389&amp;rft.source=https://chromium.googlesource.com/chromium/src/+/master/third_party/WebKit/Source/platform/image-decoders/bmp/BMPImageReader.cpp#389">&nbsp;</span></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><a href="#cite_ref-2">↑</a></span> <span class="reference-text"><span class="cite"><i>Quellcode für nsBMPDecoder.cpp in Mozilla Firefox.</i> In: <i>dxr.mozilla.org.</i> Ehemals im <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=https%3A%2F%2Fdxr.mozilla.org%2Fmozilla-central%2Frev%2F470f4f8c2b2d6f82e56e161a4b05262c85f55b59%2Fimage%2Fdecoders%2FnsBMPDecoder.cpp%23538">Original</a></span> (nicht mehr online verfügbar)<span>;</span><span class="Abrufdatum"> abgerufen am 2.&nbsp;Dezember 2015</span>.<span style="display:none"><a rel="nofollow" class="external text" href="http://deadurl.invalid/https://dxr.mozilla.org/mozilla-central/rev/470f4f8c2b2d6f82e56e161a4b05262c85f55b59/image/decoders/nsBMPDecoder.cpp#538">@1</a></span><span style="display:none"><a rel="nofollow" class="external text" href="https://dxr.mozilla.org/mozilla-central/rev/470f4f8c2b2d6f82e56e161a4b05262c85f55b59/image/decoders/nsBMPDecoder.cpp#538">@2</a></span><span style="display:none">Vorlage:Toter Link/dxr.mozilla.org</span> <small>(Seite nicht mehr abrufbar. <a rel="nofollow" class="external text" href="http://timetravel.mementoweb.org/list/2010/https://dxr.mozilla.org/mozilla-central/rev/470f4f8c2b2d6f82e56e161a4b05262c85f55b59/image/decoders/nsBMPDecoder.cpp#538">Suche in Webarchiven</a>)</small></span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fde.wikipedia.org%3AWindows+Bitmap&amp;rft.title=Quellcode+f%C3%BCr+nsBMPDecoder.cpp+in+Mozilla+Firefox&amp;rft.description=Quellcode+f%C3%BCr+nsBMPDecoder.cpp+in+Mozilla+Firefox&amp;rft.identifier=https%3A%2F%2Fdxr.mozilla.org%2Fmozilla-central%2Frev%2F470f4f8c2b2d6f82e56e161a4b05262c85f55b59%2Fimage%2Fdecoders%2FnsBMPDecoder.cpp%23538">&nbsp;</span></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://msdn.microsoft.com/de-de/library/dd183374(en-us,VS.85).aspx">BITMAPFILEHEADER Structure</a></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><a href="#cite_ref-4">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://msdn.microsoft.com/de-de/library/dd183376(en-us,VS.85).aspx">BITMAPINFOHEADER Structure</a></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><a href="#cite_ref-5">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://msdn.microsoft.com/de-de/library/dd183391(en-us,VS.85).aspx">Bitmap Storage</a></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><a href="#cite_ref-6">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external free" href="https://devblogs.microsoft.com/oldnewthing/20210525-00/?p=105250">https://devblogs.microsoft.com/oldnewthing/20210525-00/?p=105250</a> Why are device-independent bitmaps upside down? by Raymond Chen</span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><a href="#cite_ref-7">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.fileformat.info/mirror/egff/ch03_08.htm"><i>Pros and Cons of Bitmap File Formats</i></a> In: James D. Murray, William VanRyper: <i>Encyclopedia of Graphics File Formats.</i> 2. Auflage. O’Reilly &amp; Associates, Bonn 1996, ISBN 1-56592-161-5.</span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><a href="#cite_ref-8">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://docs.microsoft.com/en-us/windows/win32/directshow/top-down-vs--bottom-up-dibs">Bitmap Storage</a></span>
</li>
</ol></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2025-10-31" href="https://de.wikipedia.org/wiki/?title=Windows_Bitmap&amp;oldid=261105789">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>

</body></html>